#include<bits/stdc++.h>
struct card{
	int r;
	int which;
	bool k;
	bool live;
}g[100001];
using namespace std;
bool cmp(card a,card b){
	if(a.r!=b.r)
		return b.r>a.r;
	return b.which<a.which;
}
int main(){
	freopen("duel.in","r",stdin);
	freopen("duel.out","w",stdout);
	int n;
	scanf("%d",&n);
	for(int i=1;i<=n;++i){
		scanf("%d",&g[i].r);
		g[i].which=i;
		g[i].k=true;
		g[i].live=true;
	}
	sort(g+1,g+n+1,cmp);
	for(int i=2;i<=n;++i){
		for(int j=i-1;j>0;--j){
			if(g[j].r<g[i].r&&g[j].live==true){
				g[i].k=false;
				g[j].live=false;
				break;
			}
		}
	}
	int lives=0;
	for(int i=1;i<=n;++i){
		if(g[i].live==true)
			lives++;
	}
	printf("%d",lives);
	return 0;
}
